﻿using System.Data;
using System.Data.Common;

namespace GDM.Hogar.Repositorios.Soporte
{
    public interface IDbManager
    {
        void GuardarCambios();

        void EjecutarConsulta(CommandType tipoComando, string consultaSql);

        void EjecutarConsulta(DbCommand comando);

        IDataReader EjecutarLector(CommandType tipoComando, string consultaSql);

        IDataReader EjecutarLector(DbCommand comando);

        T EjecutarEscalar<T>(DbCommand comando);

        object ObtenerValorParametro(DbCommand comando, string nombreParametro);

        DbCommand ObtenerComandoProcedimientoAlmacenado(string nombreProcedimientoAlmacenado);

        void AbrirTransaccion();

        void RevertirCambios();
    }
}